package learning.algorithm.list.arraylist;

import learning.algorithm.list.List;
import learning.algorithm.list.linkedlist.LinkedList;

public class Main {
    public static void main(String[] args) {

        // Simple Add
//        ArrayList arrayList = new ArrayList();
//        arrayList.add(4);
//        arrayList.add(5);
//        System.out.println(arrayList);

        // remove
//        ArrayList arrayList = new ArrayList();
//        arrayList.add(4);
//        arrayList.add(5);
//        System.out.println(arrayList);
//        arrayList.remove(1);
//        System.out.println(arrayList);
//        arrayList.add(6);
//        arrayList.add(7);
//        arrayList.add(8);
//        System.out.println(arrayList);
//        int removedVal = arrayList.remove(2);
//        System.out.println(removedVal);
//        removedVal = arrayList.remove(2);
//        System.out.println(removedVal);
//        System.out.println(arrayList);
//        arrayList.remove(2);

        //  ADD for index
//        ArrayList arrayList = new ArrayList();
//        arrayList.add(4);
//        arrayList.add(5);
//        arrayList.add(1, 6);
//        System.out.println(arrayList);
//        arrayList.add(0, 7);
//        System.out.println(arrayList);
//        arrayList.add(4, 8);
//        System.out.println(arrayList);

//        int[] elements = new int[]{1, 2, 3};
//        int[] newElements = new int[5];
//        int tmpIndex = 0;
//        while (tmpIndex < elements.length) {
//            newElements[tmpIndex] = elements[tmpIndex++];
//        }
//        System.out.println(Arrays.toString(newElements));
//        ArrayList<Integer> arrayList = new ArrayList<>(10);
//        for (int i = 0; i < 10; i++) {
//            arrayList.add(i);
//        }
//        System.out.println(arrayList);
//        arrayList.remove(0);
//        System.out.println(arrayList);
        List<Integer> linkedList = new LinkedList<>();
        linkedList.add(4);
        linkedList.add(5);
        linkedList.add(1, 6);
        System.out.println(linkedList.remove(2));
        linkedList.clear();

    }
}
